package biz

// Biz 业务内部使用的接口
// admin 端实现该接口用于接收到 client 端请求后的业务处理
// client 端实现该接口用于发送消息到 admin 端
type Biz interface {
	Callback(handleCallbackParam []*HandleCallbackParam) Return[string] // 回调定时任务的执行信息给调度中心的方法
	Registry(registryParam *RegistryParam) Return[string]               // 执行器注册自己到调度中心的方法
	RegistryRemove(registryParam *RegistryParam) Return[string]         // 执行器将自己从调度中心移除的方法
}

// ExecutorBiz
// admin 端向客户端发送信息
// client 端接收信息

type ExecutorBiz interface {
	Beat() Return[string]                                 // 心跳，admin -> client 判断客户端是否启动
	IdleBeat(idleBeatParam *IdleBeatParam) Return[string] // admin -> client 判断客户端是否繁忙
	Run(triggerParam *TriggerParam) Return[string]        // 调度任务
	Kill(killParam *KillParam) Return[string]             // 终止任务
	Log(logParam *LogParam) Return[LogResult]             // admin 访问 客户端日志
}
